/**
 * 
 */
package com.sci.web.dao;

import java.util.List;
import java.util.Map;

import com.sci.web.bean.Enterprise_Base;
import com.sci.web.bean.User_Enterprise;

/**
 * @author  BaiFuyou
 * @date: Oct 12, 2011 3:04:41 PM
 * 
 * 企业信息修改
 */
public interface EnterpriseInfoManageDao {
	/**
	 * 根据用户ID获取企业的信息
	 * @param user_id
	 * @return
	 */
	public Enterprise_Base getEnterprise_BaseInfoByUserId(int user_id);
	/**
	 * 根据城市的id和查询审核情况
	 * @param map flag = 1 查询为审核 flag =2查询审核通过 flag =3 查询审核不通过
	 * @return
	 */
	List<Enterprise_Base> getAllEnterprise_BaseByCityidAndUserId(int city_id,  int flag);
	/**
	 * 如果是高级用户就不用根据城市Id查询数据
	 * @param flag = 1 查询为审核 flag =2查询审核通过 flag =3 查询审核不通过
	 * @return
	 */
	List<Enterprise_Base> getAllEnterprise_BaseByCityidAndUserId(int flag);
	/**
	 * 验证该企业信息修改完是否正在进行审核中
	 * @param id  企业的id
	 * @return true 正在进行审核 false 没有进行审核
	 */
	boolean isEnterpriseInfoChecking(int id);
	/**
	 * 对审核的企业进行通过处理
	 * @param userid
	 * @return  true 成功 false 失败
	 */
	boolean passCheckEnterprseUser(int userid);
	/**
	 * 对审核的企业进行不通过处理
	 * @param userid
	 * @return  true 成功 false 失败
	 */
	boolean notPassCheckEnterpriseUser(int userid);
	/**
	 * 获取全部的数据在重新加载的时候出发该函数
	 * @param sql
	 * @return
	 */
	List<Enterprise_Base> getEnterprsieBase_reload(String sql);
	/**
	 * 根据城市Id或去用户信息
	 * @param cityid -1 最高权限用户 else 普通互用
	 * @return
	 */
	List<User_Enterprise> getUser_Enterprise(int cityid);
	/**
	 * 删除用户id信息，假删除
	 * @param userid
	 * @return  true 成功删除  false 删除失败
	 */
	boolean deleteUserById(int userid);
	/**
	 * 重新设置用户密码成666666
	 * @param userid
	 * @return
	 */
	boolean updateUserPassword(int userid);
	/**
	 * 根据城市信息获取该城市下面更改的信息集合
	 * @param cityid  -1 所有的用户信息 >0不同城市下面的数据集合
	 * @return
	 */
	List<Enterprise_Base> getChangedEnterpriseBaseInfo(int cityid);
	/**
	 * 获取原始值
	 * @param id
	 * @return
	 */
	List<Enterprise_Base> getFristValue(int id);
	/**
	 * 获取修改值
	 * @param id
	 * @return
	 */
	List<Enterprise_Base> getSecondValue(int id);
	/**
	 * 对修改过的信息进行不通过处理
	 * @param id
	 * @return
	 */
	boolean notPassChangedInfo(int id);
	/**
	 * 对修改的信息进行通过处理
	 * @param id
	 * @return
	 */
	boolean passChangednfo(int id);
}
